package com.lagou.service.impl;

import com.lagou.dao.CourseDao;
import com.lagou.dao.impl.CourseDaoImpl;
import com.lagou.pojo.Course;
import com.lagou.service.CourseService;
import com.lagou.utils.DateUtils;
import com.lagou.web.servlet.StatusCode;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class CourseServiceImpl implements CourseService {
    CourseDao courseDao = new CourseDaoImpl();

    @Override
    public List<Course> findCourseList() {
        return courseDao.findCourseList();
    }

    @Override
    public List<Course> findByCourseNameAndStatus(String courseName, String status) {
        return courseDao.findByCourseNameAndStatus(courseName, status);
    }

    @Override
    public String saveCourseSalesInfo(Course course) {
        String dateFormat = DateUtils.getDateFormat();
        course.setStatus(1);
        course.setCreate_time(dateFormat);
        course.setUpdate_time(dateFormat);
        int row = courseDao.saveCourseSalesInfo(course);
        return row > 0 ? StatusCode.SUCCESS.toString() : StatusCode.FAIL.toString();
    }

    @Override
    public Course findCourseById(int id) {
        return courseDao.findCourseById(id);
    }

    @Override
    public String updateCourseSalesInfo(Course course) {
        String dateFormat = DateUtils.getDateFormat();
        course.setUpdate_time(dateFormat);
        int row = courseDao.updateCourseSalesInfo(course);
        return row > 0 ? StatusCode.SUCCESS.toString() : StatusCode.FAIL.toString();
    }

    @Override
    public Map<String, Integer> updateCourseStatus(Course course) {
        Map<String, Integer> result = new HashMap<>();
        int row = courseDao.updateCourseStatus(course);
        if (row > 0) {
            result.put("status", course.getStatus());
        }
        return result;
    }
}
